package zuoYe;

import java.util.Scanner;

public class tiaoJianPandDuan {

    public static void test01(){
        //计算结果x+a%3*(int)(x+y)%2/4      a=7(int)  x=2.5 y=4.7(double)
        int a=7;
        double x=2.5,y=4.7;
        System.out.println(x+a%3*(int)(x+y)%2/4);
    }

    public static void test02(){
        //计算结果(float)(a+b)/2+(int)x%(int)y   a=2  b=3  x=3.5  y=2.5
        int a=2,b=3;
        double x=2.5,y=2.5;
        System.out.println((float)(a+b)/2+(int)x%(int)y);
    }

    public static void test03(){
        //接受用户输入的两个数，分别求这两个数的和，差，积，商，模
        Scanner sc = new Scanner(System.in);

        System.out.println("请输入第一个数");
        double num1 = sc.nextDouble();

        System.out.println("请输入第二个数");
        double num2 = sc.nextDouble();

        System.out.printf("和为%f\n",num1+num2);
        System.out.printf("差为%f\n",num1-num2);
        System.out.printf("积为%f\n",num1*num2);
        System.out.printf("商为%f\n",num1/num2);
        System.out.printf("模为%f\n",num1%num2);
    }

    public static void test04(){
        //要求用户输入一个四位数，如果用户输入不是四位数，将提示错误信息，如果是四位数，将这个四位数的个，十，百，千位的数字单独输出来，并将他们的和求出来！
        //例：用户输入2045，输出结果为：个位：5，十位：4，百位：0，千位：2，和为：11
        Scanner sc = new Scanner(System.in);
        int value = sc.nextInt();

        if(value < 1000 || value > 9999){
            System.out.println("错误");
            return;
        }

        int
                g = value%10,
                s = value / 10 % 10,
                b = value / 100 % 10,
                q = value / 1000;

        System.out.printf("个位：%d,十位：%d,百位：%d,千位：%d,和为%d",g,s,b,q,g+s+b+q);
    }

    public static void test05(){
        //某公司即将为员工买保险，
        // 要求如下：已婚的男、女性都可以买保险，
        // 未婚男性25岁以下不提供保险，25岁以上（包括）提供保险，
        // 未婚女性22岁以下不提供保险，22岁以上（包括）提供保险，
        // 请用程序实现以上功能，接受员工的信息，显示公司是否为他提供保险，
        // 并显示原因（如：因为已婚，公司为你提供保险；公司不能为你提供保险，因为未婚男性在25岁以上才能提供保险）
        Scanner sc = new Scanner(System.in);

        System.out.println("请输入是否是否已婚（是/否）");
        String yiHun = sc.next();

        System.out.println("请输入性别：（男/女）");
        String xinBie = sc.next();

        System.out.println("请输入年龄：");
        int nianLing = sc.nextInt();

        if(yiHun.equals("是")){
            System.out.println("因为已婚，公司提供保险");
            return;
        }

        if(xinBie.equals("男")) {
            if (nianLing >= 25)
                System.out.println("男性25岁及以上，公司提供保险");
            else
                System.out.println("男性25岁以下不提供保险");
        }else{
            if (nianLing >= 22)
                System.out.println("女性22岁及以上，公司提供保险");
            else
                System.out.println("女性22岁以下不提供保险");
        }
    }

    public static void test06(){
        //用A,B,C等级对学生的的成绩分类, 其中0 - 59是A, 60 – 80是B,81 – 100 是C等级,
        // 请用代码实现该功能,判断某位同学的分数等级,同学的的分数由用户输入,不会从控制台接受数据就自己假设分数
        Scanner sc = new Scanner(System.in);

        System.out.println("请输入成绩：");
        int chengji = sc.nextInt();

        if(chengji >= 0 && chengji <= 59)
            System.out.println("A");
        else if(chengji >= 60 && chengji <= 80)
            System.out.println("B");
        else if(chengji >= 81 && chengji < 100)
            System.out.println("C");
    }

    public static void test07(){
        //某超市进行促销活动，规则如下：
        // 如果是本超市的会员，购买的商品总价在100元以上，八折优惠；
        // 如果是会员但商品总价在100元以下9折优惠；
        // 如果非会员商品总价在100以上九折优惠；
        // 如果非会员商品总价在100以下，不打折；
        // 询问用户是否是会员，和商品的总价，根据答案判断折扣额以及最终要付款的金额
        Scanner sc = new Scanner(System.in);

        System.out.println("您是否是会员呢？（是/否）");
        String huiYuan = sc.next();

        System.out.println("请输入商品的总价");
        double zongJia = sc.nextDouble();

        if(huiYuan.equals("是")){
            if(zongJia >= 100)
                System.out.printf("打八折，折扣价为：%f\n",zongJia * 0.8);
            else
                System.out.printf("打九折，折扣价为：%f\n",zongJia * 0.9);
        }else{
            if(zongJia >= 100)
                System.out.printf("打九折，折扣价为：%f\n",zongJia * 0.9);
            else
                System.out.printf("打十折，折扣价为：%f\n",zongJia);
        }
    }

    public static void test08(){
        //判断用户输入的年份是不是闰年，
        // 接受用户输入的年份后，首先要判断数字是不是正确的年份，年份是四位数，
        // 闰年的条件是符合下面二者之一：①能被4整除，但不能被100整除；②能被4整除，又能被100整除。
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入年份");
        int year = sc.nextInt();

        if(year > 9999 || year < 1000){
            System.out.println("输入有误");
            return;
        }

        if(year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
            System.out.println("是闰年");
        else
            System.out.println("不是闰年");
    }

    public static void test09(){
        //判断用户输入的字母是不是元音字母
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个字母");
        String ziMu = sc.next();

        switch(ziMu){
            case "a": case "e": case "i": case "o": case "u":
                System.out.println("是元音字母");
                break;
            default:
                System.out.println("不是元音字母");
        }
    }

    public static void test10(){
        //用代码实现以下的本周食谱：
        // 周一：鸡蛋      周二：鱼       周三：青菜      周四：牛肉        周五：		虾       周六：汉堡       周天：鸡翅，
        // 先询问用户今天是星期几，接受用户的答案后，判断输出今天的食谱
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入今天周几？");
        String zhou = sc.next();
        switch(zhou){
            case "周一":
                System.out.println("今天吃鸡蛋");
                break;
            case "周二":
                System.out.println("今天吃鱼");
                break;
            case "周三":
                System.out.println("今天吃青菜");
                break;
            case "周四":
                System.out.println("今天吃牛肉");
                break;
            case "周五":
                System.out.println("今天吃虾");
                break;
            case "周六":
                System.out.println("今天吃汉堡鸡翅");
                break;
            default:
                System.out.println("输入有误");
                break;
        }
    }

    public static void test11(){
        //接受用户输入的四个数字a,b,c,d，
        // 将四个数中的最大值求出来（例如输出结果为：a的值为20，a最大）！
        Scanner sc = new Scanner(System.in);
        int a,b,c,d;
        System.out.println("请输入a的值");
        a = sc.nextInt();
        System.out.println("请输入b的值");
        b= sc.nextInt();
        System.out.println("请输入c的值");
        c = sc.nextInt();
        System.out.println("请输入d的值");
        d = sc.nextInt();

        int max = a;
        String maxStr = "a";
        if(max < b){
            max = b;
            maxStr = "b";
        }
        if(max < c){
            max = c;
            maxStr = "c";
        }
        if(max < d){
            max = d;
            maxStr = "d";
        }
        System.out.printf("%s的值为%d，%s最大",maxStr,max,maxStr);
    }

    private static int[] arr = new int[3];
    private static void test12_fuZhu(int a,int b){
        if(arr[a] > arr[b]){
            int temp = arr[a];
            arr[a] = arr[b];
            arr[b] = temp;
        }
    }
    public static void test12(){
        //输入3个数,按大小输出这3个数（例如：用户输入的是：10  5  20  ，排序后为：5     10   20）
        Scanner sc = new Scanner(System.in);
        for(int i = 0;i < 3;++i){
            System.out.printf("请输入第%d个数\n",i+1);
            arr[i] = sc.nextInt();
        }

        test12_fuZhu(0,1);
        test12_fuZhu(0,2);
        test12_fuZhu(1,2);

        for(int i = 0;i < 3;++i)
            System.out.println(arr[i]);
    }

    public static void test13(){
        //输入一个数，判断该数是不是3的倍数，并将结果输出
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个数");
        int num = sc.nextInt();
        if(num % 3 == 0)
            System.out.println("是3的被数");
        else
            System.out.println("不是3的倍数");
    }
}
